module.exports = {
  //   "editor.formatOnSave": true,
  // "editor.defaultFormatter": "esbenp.prettier-vscode"

  // ***********************
  // 基本格式化选项
  // ***********************

  // 在语句末尾打印分号
  semi: true,

  // 使用单引号而不是双引号
  singleQuote: true,

  // 指定制表符的空格数
  tabWidth: 2,

  // 缩进时使用空格而不是制表符
  useTabs: false,

  // 在对象、数组等中打印尾随逗号（适用于 ES5）
  trailingComma: 'es5',

  // 指定每行最大字符数
  printWidth: 80,

  // 在对象字面量的括号之间打印空格
  bracketSpacing: true,

  // 在单独的箭头函数参数周围省略括号
  arrowParens: 'avoid',

  // 行尾序列（auto 表示保持现有格式）
  endOfLine: 'auto',

  // ***********************
  // JavaScript/TypeScript 特定选项
  // ***********************

  // 在 JSX 中使用单引号
  jsxSingleQuote: false,

  // 将 > 多行 HTML 元素放在最后一行的末尾
  bracketSameLine: false,

  // 包含括号内的空格在 JSX 属性中
  jsxBracketSameLine: false,

  // 指定是否需要在属性周围加引号
  quoteProps: 'as-needed',

  // ***********************
  // 特殊格式选项
  // ***********************

  // 在 Markdown 文件中包装散文
  proseWrap: 'preserve',

  // 指定 HTML、Vue 和 JSX 文件中全局空白敏感度
  htmlWhitespaceSensitivity: 'css',

  // Vue 文件中是否缩进脚本和样式标签内的代码
  vueIndentScriptAndStyle: false,

  // ***********************
  // 不常用选项（可根据需要启用）
  // ***********************

  /*
  // 强制在多行三元表达式中使用括号
  experimentalTernaries: false,

  // 在所有对象中强制使用引号
  quoteProps: 'preserve',

  // 在 Markdown 中包装散文
  proseWrap: 'always',

  // 指定解析器（通常由 Prettier 自动推断）
  parser: 'babel',

  // 指定要使用的解析器（通常由 Prettier 自动推断）
  filepath: '',

  // 控制是否格式化原始值
  embeddedLanguageFormatting: 'auto',

  // 控制是否格式化嵌入在文件中的语言
  singleAttributePerLine: false,
  */
};
